#!/bin/bash
#定义函数实现用户不输入则一直提示输入，直到输入为止
input_fun(){
        input_var=''
        while [ -z $input_var ]
                do
                read -p "$1" input_var
                done
                echo $input_var
}
#调用函数并且获取用户输入web服务器的IP、域名以及数据根目录
IP=`input_fun 请输入你的IP地址：`
name=`input_fun 请输入你的域名：`
dir=`input_fun 请输入你的数据根目录：`
#将ip与主机名输入到hosts文件里
cat>>/etc/hosts<<EOF
$IP $name
EOF
#创建数据根目录和首页文件
[ -f $dir ] && mv $dir $dir.bak
[ ! -d $dir ] && mkdir -p $dir
echo "this is $name test page" > $dir/index.html
#yum安装apache
yum -y install httpd &>/dev/null
#发布虚拟主机
cat>>/etc/httpd/conf/httpd.conf<<-EOF
NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot $dir
    ServerName $name
    ErrorLog logs/dummy-host.example.com-error_log
    CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
EOF
#启动
service httpd restart &>/dev/null
echo "====apache启动成功===="
#测试验证
curl http://$name